#ifndef __SmTest_h__
#define __SmTest_h__

#include "GlGameListener.h"
#include "GlPosition.h"

namespace GraphicLibrary
{
	class SpotLight;
	class PointLight;
}

namespace SneakingMission
{
	class TestGame
		: public GraphicLibrary::GameListener
	{
		public:
			virtual ~TestGame();
			virtual void init();
			virtual bool tick(const float deltaTime);
			virtual void mouseDown(const float x, const float y);
			virtual void mouseUp(const float x, const float y);
			virtual void mouseMove(const float x, const float y);
			virtual void keyPressed(const unsigned int key);

			static TestGame* GetSingleton()
			{
				if(!msSingleton)
					msSingleton = new TestGame();
				return msSingleton;
			}
		private:
			float						mSpotLightDirection;
			bool						mMouseDown;
			GraphicLibrary::SpotLight*	mSpotLight;
			GraphicLibrary::PointLight*	mPointLight;
			static TestGame*			msSingleton;
			bool						mRotateLeft;
			bool						mRotateRight;
			TestGame();
	};
}

#endif // __SmTest_h__
